#include <cstdio>
#include <algorithm>
#include <bitset>
using namespace std;
//定义了一个bitset数组 一共有10005个bitset 每个bitset有1005个二进制位
//在这个题里 b[i]的第j位是1的话说明 i这个整数 在j这个集合里面
//所以 判断x y是否同在至少一个集合中 也就是判断b[x] & b[y] (还是一个bitset) .any()
bitset<1005> b[10005];
int main(void){
    int n,c,t;
    int q,x,y;
    scanf("%d",&n);
    for(int i=1;i<=n;i++){
        scanf("%d",&c);
        for(int j=0;j<c;j++){
            scanf("%d",&t);
            b[t].set(i);
        }
    }
    scanf("%d",&q);
    while(q--){
        scanf("%d%d",&x,&y);
        if((b[x]&b[y]).any()){
            printf("YES\n");
        }
        else{
            printf("NO\n");
        }
    }
    return 0;
}
